// 二进制转10进制
console.log(parseInt('11111111', 2));

// 10进制转16进制
console.log((255).toString(16));

// 0.1 + 0.2 !== 0.3  // 小数转成2进制比实际大一点
// 将小数转换成二进制乘2取整
// 0.1 * 2 = 0.2  0
// 0.2 * 2 = 0.4  0
// 0.4 * 2 = 0.8  0
// 0.8 * 2 = 1.6  1

// base64是怎么转换出来的，数据传递，代替URL,体积会比原来大1/3
let r = Buffer.from('珠');
console.log(r); //  e7 8f a0

// 先转换成2进制
// 111001111000111110100000
// 111001 111000 111110 100000
console.log((0xe7).toString(2));
console.log((0x8f).toString(2));
console.log((0xa0).toString(2));

// 将 3*8的格式转换成 4*6
console.log(parseInt('111001', 2)); // 57
console.log(parseInt('111000', 2)); // 56
console.log(parseInt('111110', 2)); // 62
console.log(parseInt('100000', 2)); // 32

let str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
str += str.toLocaleLowerCase();
str += '0123456789+/';

let a = str[57] + str[56] + str[62] + str[32];
console.log(a);
